package com.enlorenz.support.bank.iso8583.packer;

import com.enlorenz.support.bank.iso8583.msg.Iso8583Fields;
import com.solab.iso8583.IsoMessage;

public interface IIsoMsgGenerator {
	
	/**
	 * 打包报文
	 * @param attParams 附加属性
	 * @return 报文字节数组
	 */
	public byte [] pack(Object attParams);
	
	/**
	 * 解析请求数据
	 * @param buff 数据
	 * @return
	 */
	public IsoMessage parseReq(byte [] buff);

	/**
	 * 解析返回数据
	 * @param buff 数据
	 * @return
	 */
	public IsoMessage parseRes(byte [] buff);

	/**
	 * 解析请求数据
	 * @param buff 数据
	 * @return
	 */
	public Iso8583Fields parseReq2Object(byte [] buff);
	
	/**
	 * 解析返回数据
	 * @param buff 数据
	 * @return
	 */
	public Iso8583Fields parseRes2Object(byte [] buff);
	
}
